1. Field of the Invention
The present invention relates to the field of graphical user interface (GUI) controls and more particularly to control advances from field to field in a GUI.
2. Description of the Related Art
A graphical application provides a GUI in order to manage content viewed by an end user on a display screen. A GUI control is a user interface interface element with which end users interact. Events resulting from user input provided in connection with a GUI control, such as a mouse click or keyboard stroke, are detected by the client application and handled using one or more “listener” processes in the application. A form is a type of GUI for an application through which data is collected for processing in the application. As such, a GUI form acts as a container for a number of GUI controls—especially text boxes, radio buttons, drop-down lists, check boxes and the like. End users generally “complete” a form by providing input to the controls of the GUI such as entering text in a text box, and subsequently submitting the form to an agent for processing (e.g., to a Web server, to a mail server, etc.).
Despite a degree of organization provided by an arrangement of controls in GUI form, some controls permit free-form entry of data and, in consequence, provide enough latitude to the end user to provide requested information in a format not readily understood by the underlying application. As such, best practices management from GUI form design specifies the decomposition of input fields into smaller units of input to avoid free form entry of data. A classic example would be the decomposition of address input into respective street, city, state and zip code input fields. Providing granular input fields in a GUI form, however, results in the complication of the GUI form in particular in respect to the number of fields through which the end user must advance.
Ordinarily, an end user navigates a GUI form by selecting a next field with a mouse click, or keyboard stroke such as a tab stroke or carriage return stroke. To help the end user navigate more quickly through longer GUI forms, many applications automatically advance the cursor position of the end user from one field to the next once the a maximum number of characters have been input for a particular input field. This type of auto-advancing is especially helpful when the data field can be parsed or formatted in a structured form, such as a user's social security number or telephone number.
Not all GUI forms provide for auto-advancing. Thus, the end user is left to guess as to whether or not manual form field navigation is required. When auto-advancing unexpectedly is available for a GUI form, out of habit the end user oftentimes engages a manual form field advance resulting in the end user navigating beyond a desired GUI form field.